// 上面这个代码处理过度动画（默认加上不用管）
document.addEventListener('DOMContentLoaded', () => {
  setTimeout(() => {
    document.body.classList.add('sidenav-pinned')
    document.body.classList.add('ready')
  }, 200)
})

// 每个页面都会导入该js 统一的设置写这里即可

   // 创建了toast轻提示 元素
   const myToast = new bootstrap.Toast(document.querySelector('#myToast'), {
    delay: 2000,
  })
  function tip(msg) {
    document.querySelector(' #myToast .toast-body').innerHTML = msg
    myToast.show()
  }
//替换username 和 token
const username = localStorage.getItem('username')
//const token = localStorage.getItem('token')
const user = document.querySelector('.d-lg-block span')
//if(user){user.innerHTML = username}
user && (user.innerHTML = username)
//退出登录 清除token
const logoutbtn = document.querySelector('#logout')

if (logoutbtn) {
  logoutbtn.addEventListener('click', function () {

   localStorage.removeItem('token')
   localStorage.removeItem('username')
 location.href = "./login.html"
  })
}

  //基地址
  axios.defaults.baseURL="http://ajax-api.itheima.net"
  // 添加请求拦截器
axios.interceptors.request.use(function (config) {
  // 在发送请求之前做些什么
  //console.log(config);
  //请求拦截器里面配置请求头
  config.headers.Authorization = localStorage.getItem('token');
  return config;
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error);
});

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
  // 2xx 范围内的状态码都会触发该函数。
  //console.log(response.data);
  // 对响应数据做点什么
  
  return response.data;
}, function (error) {
  // 超出 2xx 范围的状态码都会触发该函数。
  // 对响应错误做点什么
  console.dir(error);
  if (error.response.status === 401) {
    localStorage.removeItem('username');
    localStorage.removeItem('token');
    location.assign("./index.html")
  }
  return Promise.reject(error);
});